home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Speccy ClassiX 1998
/
Speccy ClassiX 98.iso
/
amiga_system
/
the_aminet
/
dev
/
gcc
/
ixemulsrc.lha
/
ixemul-41.4
/
library
/
kprintf.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-09-27
|
1KB
|
42 lines
/* Support stuff for doing low level debugging of the library and/or
* runtime startup code using KPrintF.
*
* Compile with CFLAGS="-O2 -DDEBUG_VERSION" to get debugging version.
*
* FIXME: For some reason the -O2 is required, otherwise the system
* crashes.
*/
/*
* Use as: KPRINTF (("foo = %s\n", bar));
* Prints: /mysource/project/bell.c:45: foo = bell
*/
#ifndef __KPRINTF_H__
#define __KPRINTF_H__
#ifdef DEBUG_VERSION
#define KPRINTF_WHERE do { KPrintF ("%s:%ld: ", __FILE__, __LINE__); } while (0)
#define KPRINTF_ARGS(a) do { KPrintF a; } while (0)
#define KPRINTF(a) do { KPRINTF_WHERE; KPRINTF_ARGS(a); } while (0)
#define KPRINTF_DISABLED(a) do { Disable (); KPRINTF (a); Enable (); } while (0)
#define KPRINTF_ARGV(name,argv) \
do { int argi; \
for (argi = 0; (argv)[argi] != NULL; argi++) \
KPRINTF (("%s[%ld] = [%s]\n", (name), argi, (argv)[argi])); \
} while (0)
#else /* not DEBUG_VERSION */
#define KPRINTF_WHERE /* Expands to nothing */
#define KPRINTF_ARGS(a) /* Expands to nothing */
#define KPRINTF(a) /* Expands to nothing */
#define KPRINTF_DISABLED(a) /* Expands to nothing */
#define KPRINTF_ARGV(name,argv) /* Expands to nothing */
#endif /* DEBUG_VERSION */
#endif